//
//  User.h
//  TuiTe
//
//  Created by 张 霄鹤 on 10-3-12.
//  Copyright 2010 xhzhang. All rights reserved.
//

#import <Foundation/Foundation.h>

#import "Tweet.h"

#import "Element.h"

@class Tweet;

@interface User : NSManagedObject {
	NSString *uid;
	NSString *name;
	NSString *screen_name;
	NSString *location;
	NSString *udescription;
	NSString *profile_image_url;
	NSString *url;
	NSNumber * isProtected;
	NSNumber * followers_count;
	NSInteger profile_background_color;
	NSInteger profile_text_color;
	NSInteger profile_link_color;
	NSInteger profile_sidebar_fill_color;
	NSInteger profile_sidebar_border_color;
	NSNumber * friends_count;
	NSString *created_at;
	NSNumber * favourites_count;
	NSString *profile_background_image_url;
	BOOL geo_enabled;
	NSNumber * verified;
	BOOL following;
	NSNumber * statuses_count;
}

@property(nonatomic, retain) NSString *uid;
@property(nonatomic, retain) NSString *name;
@property(nonatomic, retain) NSString *screen_name;
@property(nonatomic, retain) NSString *location;
@property(nonatomic, retain) NSString *udescription;
@property(nonatomic, retain) NSString *profile_image_url;
@property(nonatomic, retain) NSString *url;
@property(nonatomic, retain) NSNumber * isProtected;
@property(nonatomic, retain) NSNumber * followers_count;
@property(nonatomic) NSInteger profile_background_color;
@property(nonatomic) NSInteger profile_text_color;
@property(nonatomic) NSInteger profile_link_color;
@property(nonatomic) NSInteger profile_sidebar_fill_color;
@property(nonatomic) NSInteger profile_sidebar_border_color;
@property(nonatomic, retain) NSNumber * friends_count;
@property(nonatomic, retain) NSString *created_at;
@property(nonatomic, retain) NSNumber * favourites_count;
@property(nonatomic, retain) NSString *profile_background_image_url;
@property(nonatomic) BOOL geo_enabled;
@property(nonatomic, retain) NSNumber * verified;
@property(nonatomic) BOOL following;
@property(nonatomic, retain) NSNumber * statuses_count;

- (void)parse:(Element *)el;

- (NSNumber *)favourites_count;
- (void)setFavourites_count:(NSNumber *)value;
- (BOOL)validateFavourites_count:(id *)valueRef error:(NSError **)outError;

- (NSNumber *)followers_count;
- (void)setFollowers_count:(NSNumber *)value;
- (BOOL)validateFollowers_count:(id *)valueRef error:(NSError **)outError;

- (NSNumber *)friends_count;
- (void)setFriends_count:(NSNumber *)value;
- (BOOL)validateFriends_count:(id *)valueRef error:(NSError **)outError;

- (NSNumber *)isProtected;
- (void)setIsProtected:(NSNumber *)value;
- (BOOL)validateIsProtected:(id *)valueRef error:(NSError **)outError;

- (NSString *)location;
- (void)setLocation:(NSString *)value;
- (BOOL)validateLocation:(id *)valueRef error:(NSError **)outError;

- (NSString *)name;
- (void)setName:(NSString *)value;
- (BOOL)validateName:(id *)valueRef error:(NSError **)outError;

- (NSString *)profile_image_url;
- (void)setProfile_image_url:(NSString *)value;
- (BOOL)validateProfile_image_url:(id *)valueRef error:(NSError **)outError;

- (NSString *)screen_name;
- (void)setScreen_name:(NSString *)value;
- (BOOL)validateScreen_name:(id *)valueRef error:(NSError **)outError;

- (NSNumber *)statuses_count;
- (void)setStatuses_count:(NSNumber *)value;
- (BOOL)validateStatuses_count:(id *)valueRef error:(NSError **)outError;

- (NSString *)udescription;
- (void)setUdescription:(NSString *)value;
- (BOOL)validateUdescription:(id *)valueRef error:(NSError **)outError;

- (NSString *)uid;
- (void)setUid:(NSString *)value;
- (BOOL)validateUid:(id *)valueRef error:(NSError **)outError;

- (NSString *)url;
- (void)setUrl:(NSString *)value;
- (BOOL)validateUrl:(id *)valueRef error:(NSError **)outError;

- (NSNumber *)verified;
- (void)setVerified:(NSNumber *)value;
- (BOOL)validateVerified:(id *)valueRef error:(NSError **)outError;


// Access to-many relationship via -[NSObject mutableSetValueForKey:]
- (void)addTweetsObject:(Tweet *)value;
- (void)removeTweetsObject:(Tweet *)value;





@end
